NetLogo banner

Home
Download
Help
Resources
Extensions
FAQ
NetLogo Publications
Contact Us
Donate

Models:
Library
Community
Modeling Commons

Beginners Interactive NetLogo Dictionary (BIND)
NetLogo Dictionary

User Manuals:
Web
Printable
Chinese
Czech
Farsi / Persian
Japanese
Spanish

  Donate

NetLogo User Community Models

(back to the NetLogo User Community Models)

[screen shot]

Download
If clicking does not initiate a download, try right clicking or control clicking and choosing "Save" or "Download".(The run link is disabled for this model because it was made in a version prior to NetLogo 6.0, which NetLogo Web requires.)

## WHAT IS IT?

This model simulates election results with controlled voters.

## HOW IT WORKS

The model operates under three key assumptions. 1) Voters can only choose to vote for their party, Democrat or Republican, or stay home, 2) voters are rational and decide their behavior based solely on their payoff, and 3) voters do not get precise information on the electorate. The third assumption is modeled by noisy polls. Voters do not get accurate counts on the Democrat or Republican turnout of the previous election. From these noisy polls voters decide whether or not they will vote. Voting then happens and the noisy polls are updated based on the actual poll results plus some random noise. This process repeats on each tick.

## HOW TO USE IT

Before starting the simulation, decide the number of Republicans, n-republicans, and Democrats, n-democrats. Adjusting the epsilon slider will determine the noise that affects the polls. A random integer between -epsilon and +epsilon will be added to the voter turnout as information for the subsequent election; the noise added to the Republican turnout and Democrat turnout is independent. The xi variable affects the likelihood voters of both parties turnout given the results of the noisy polls.

To start, press Setup. The world screen will turn pink for all possible turnout results with the number of Democrats on the x-axis and the number of Republicans on the y-axis. To start, a random pair of integers is chosen to represent the turnout, with Democrats in the x-coordinate and Republicans in the y-coordinate, [n-democrat n-republican]. This initial turnout is represented by a blue square. The percent turnout for each party is noted in the dem turnout and rep turnout monitor boxes. In addition, the noisy poll results are shown; this will affect the turnout in the next period. Press either Go option to run the simulation. With each tick, the actual voting record is shown and the corresponding spot on the screen occupied by the blue square. The noisy poll is then updated as well. As the simulation continues to run, the average turnout for both parties is recorded. Furthermore, for each coordinate pair visited, representing actual election results, the number of visits is recorded and this combined with visit recency determines the shade of red displayed. The darker the shade, the more visits and the more recent the visits. The colors fade back to pink over time. The most visited voting result is tracked in the corresponding monitor box. Once you are ready to stop the simulation, press the Go, forever button again.

## THINGS TO NOTICE

Note the path the blue square representing actual elections travels. Note the average turnout for both parties relative to the number of members of each party.

## THINGS TO TRY

Adjust epsilon to see the effects of polling noise on election turnout. Test to see what happens when there is no polling noise, epsilon=0. How does this alter the simulation?

Adjust xi to change the likelihood agents vote in the face of noisy poll results.

## EXTENDING THE MODEL

Given that three key assumptions were made in this voting simulation, it may be useful to try to loosen one or more of the assumptions. For example, you might try to model what would happen if voters had the option to vote for the opposite party or for a third candidate.

## RELATED MODELS

Axelrod
Confident Voter
Heterogeneous Voter
Ising
Potts
Social Consensus

(back to the NetLogo User Community Models)